#include <XFuXMPlayer.h>
Collaboration diagram for XFuXMPlayer:

Public Member Functions | |
| void | initSong (INT16 aStartOrder) |
| Initializes the playhead to the beginning of a certain pattern. | |
| INT32 | getTick () |
| Returns the player's internal tick. | |
| INT16 | getCurrentOrder () |
| Returns the current order being played. | |
| void | addHandler (XFuXMPlayerEvent aEvent, XFuXMPlayerEventHandler *aHandler) |
| Adds a new event handler to this player. | |
| INT | removeHandler (XFuXMPlayerEventHandler *aHandler) |
| Removes a specific event handler from this player. | |
| void | removeHandlers () |
| Removes all event handlers from this player. | |
| virtual void | stop () |
| virtual UINT32 | stream (void *aBuffer, INT32 aTargetSamples, INT32 aOffset, INT32 aSamples) |
| virtual | ~XFuXMPlayer () |
Static Public Member Functions | |
| XFuXMPlayer * | create (const CHAR *aFilename, FLOAT32 aSamplingRate, UINT32 aFlags) |
| Creates an XM-Player. | |
Protected Member Functions | |
| INT | loadXM (const CHAR *aFilename, XFcFile *aTextout) |
| XFuXMFormatAtom | getAtom () |
| void | dumpSongParameters (XFcFile *aTextout) |
| UINT32 | getPeriod (INT8 aNote, INT8 aFinetune) |
| UINT32 | getSpeed (UINT32 aPeriod, FLOAT32 aSamplingRate) |
| void | initChannel (XFuXMChannel &aCh) |
| void | initSound (XFuXMChannel &aCh) |
| void | notifyHandlers (XFuXMChannel &aCh) |
| Notify handlers of events. | |
| void | debugPrint (XFcFile *aTextout, char *aFmt,...) |
| XFuXMPlayer (FLOAT32 aSamplingRate, UINT32 aFlags) | |
Protected Attributes | |
| FLOAT32 | mSamplingRate |
| Sampling rate. | |
| UINT32 | mFlags |
| Format flags. | |
| INT32 | mTgtXor |
| Signed/unsigned xor value. | |
| XFuXMFormatHeader | mXMHeader |
| XM file header. | |
| XFuXMSong | mSong |
| Module. | |
| XFuXMFormatPatternHeader * | mXMPatternHeaders |
| XM pattern headers. | |
| XFuXMPattern * | mPatternData |
| Pattern data. | |
| XFuXMInstrument * | mInstruments |
| Instruments. | |
| XFuXMChannel * | mChannels |
| Channels. | |
| INT16 | mSineWaveTable [XMFORMAT_SIZEOF_WAVEFORM] |
| INT16 | mSquareWaveTable [XMFORMAT_SIZEOF_WAVEFORM] |
| INT16 | mRampUpTable [XMFORMAT_SIZEOF_WAVEFORM] |
| INT16 | mRampDownTable [XMFORMAT_SIZEOF_WAVEFORM] |
| UINT32 | mPpoint |
| Pattern data index. | |
| INT16 | mCurrentOrder |
| Order index. | |
| INT16 | mPatternNb |
| Pattern index. | |
| INT16 | mCurrentRow |
| Row index. | |
| INT32 | mSamplesPerTick |
| Amount of samples in one tick. | |
| INT32 | mSamplePointer |
| Counter. | |
| FLOAT32 | mTickRate |
| Tick speed in Hz. | |
| INT32 | mRamp |
| UINT8 | mPatternDelayCounter |
| Pattern delay counter. | |
| UINT8 | mPatternDelayCounterTemp |
| Temporary pattern delay counter. | |
| UINT8 | mPatternDelaySkip |
| Flag for skipping pattern delay commands. | |
| UINT8 | mIsRead |
| Flag indicating whether pattern data should be read. | |
| UINT8 | mJumpFlag |
| Flag for pattern jump and pattern break commands. | |
| UINT8 | mCurrentTick |
| Tick index (0..tempo-1). | |
| UINT32 | mTotalTicks |
| Test tick counter. | |
| REAL | mVolumeRampDivOpt |
| For volume ramping. | |
| XFcLinkedList< XFuXMPlayerEventHandlerSlot > * | mEventHandlers |
| List of event handlers interested in events of this player. | |
Definition at line 42 of file XFuXMPlayer.h.
|
||||||||||||
|
Definition at line 2581 of file XFuXMPlayer.cpp. References mChannels, mEventHandlers, mFlags, mInstruments, XFuXMSong::mOrderTable, mPatternData, mRampDownTable, mRampUpTable, mSamplingRate, mSineWaveTable, mSong, mSquareWaveTable, mTgtXor, and mXMPatternHeaders. Referenced by create(). |
|
|
Definition at line 2659 of file XFuXMPlayer.cpp. References mChannels, XFuXMPattern::mData, mEventHandlers, mInstruments, XFuXMSong::mNbInstruments, XFuXMSong::mNbPatterns, XFuXMInstrument::mNbSamples, XFuXMSample::mOffset, XFuXMSong::mOrderTable, mPatternData, XFuXMPattern::mRows, XFuXMInstrument::mSamples, mSong, and mXMPatternHeaders. |
|
||||||||||||
|
Adds a new event handler to this player.
Definition at line 1248 of file XFuXMPlayer.cpp. References XFuXMPlayerEventHandlerSlot::mEvent, mEventHandlers, and XFuXMPlayerEventHandlerSlot::mHandler. |
|
||||||||||||||||
|
Creates an XM-Player. Creates an XM-Player with the given module name, sampling rate and audio format. Definition at line 2704 of file XFuXMPlayer.cpp. References debugPrint(), dumpSongParameters(), getAtom(), initSong(), loadXM(), XFuXMFormatAtom::mEffectType, XFuXMFormatAtom::mEffectValue, mEventHandlers, XFuXMFormatAtom::mInstrumentNb, XFuXMFormatHeader::mNbChannels, XFuXMFormatHeader::mNbPatterns, XFuXMFormatPatternHeader::mNbRows, XFuXMFormatAtom::mNote, mPatternNb, mPpoint, XFuXMFormatPatternHeader::mSize, XFuXMFormatAtom::mVolume, mVolumeRampDivOpt, mXMHeader, mXMPatternHeaders, and XFuXMPlayer(). |
|
||||||||||||||||
|
Referenced by create(), dumpSongParameters(), and loadXM(). |
|
|
|
Definition at line 901 of file XFuXMPlayer.cpp. References XFuXMFormatAtom::mEffectType, XFuXMFormatAtom::mEffectValue, XFuXMFormatAtom::mInstrumentNb, XFuXMFormatAtom::mNote, mPatternData, mPatternNb, mPpoint, and XFuXMFormatAtom::mVolume. |
|
|
Returns the current order being played.
Definition at line 1242 of file XFuXMPlayer.cpp. References mCurrentOrder. |
|
||||||||||||
|
Definition at line 872 of file XFuXMPlayer.cpp. Referenced by initSound(). |
|
||||||||||||
|
Definition at line 881 of file XFuXMPlayer.cpp. References FP_VALUE, and linearFrequencyTable. Referenced by stream(). |
|
|
Returns the player's internal tick.
Definition at line 1236 of file XFuXMPlayer.cpp. References mSamplingRate, and mTotalTicks. |
|
|
|
|
||||||||||||
|
|
Notify handlers of events.
Definition at line 1080 of file XFuXMPlayer.cpp. References XFuXMPlayerEventHandler::handleXMPlayerEvent(), XFuXMPlayerEvent::mEffectType, XFuXMChannel::mEffectType, XFuXMChannel::mEffectValue, XFuXMPlayerEvent::mEffectValue, XFuXMPlayerEventHandlerSlot::mEvent, mEventHandlers, XFuXMPlayerEventHandlerSlot::mHandler, XFuXMChannel::mInstrumentNb, XFuXMPlayerEvent::mInstrumentNb, XFuXMChannel::mNote, XFuXMPlayerEvent::mNote, XFuXMPlayerEvent::mPlayer, XFuXMChannel::mVolume, and XFuXMPlayerEvent::mVolume. Referenced by stream(). |
|
|
Removes a specific event handler from this player.
Definition at line 1261 of file XFuXMPlayer.cpp. References mEventHandlers, and XFuXMPlayerEventHandlerSlot::mHandler. |
|
|
Removes all event handlers from this player.
Definition at line 1275 of file XFuXMPlayer.cpp. References mEventHandlers. |
|
|
Definition at line 1287 of file XFuXMPlayer.cpp. References initSong(). |
|
||||||||||||||||||||
|
|
Channels.
Definition at line 57 of file XFuXMPlayer.h. Referenced by initSong(), loadXM(), stream(), XFuXMPlayer(), and ~XFuXMPlayer(). |
|
|
Order index.
Definition at line 65 of file XFuXMPlayer.h. Referenced by getCurrentOrder(), initSong(), and stream(). |
|
|
Row index.
Definition at line 67 of file XFuXMPlayer.h. Referenced by initSong(), and stream(). |
|
|
Tick index (0..tempo-1).
Definition at line 80 of file XFuXMPlayer.h. Referenced by initSong(), and stream(). |
|
|
List of event handlers interested in events of this player.
Definition at line 86 of file XFuXMPlayer.h. Referenced by addHandler(), create(), notifyHandlers(), removeHandler(), removeHandlers(), XFuXMPlayer(), and ~XFuXMPlayer(). |
|
|
Format flags.
Definition at line 46 of file XFuXMPlayer.h. Referenced by loadXM(), stream(), and XFuXMPlayer(). |
|
|
Instruments.
Definition at line 55 of file XFuXMPlayer.h. Referenced by dumpSongParameters(), initChannel(), loadXM(), stream(), XFuXMPlayer(), and ~XFuXMPlayer(). |
|
|
Flag indicating whether pattern data should be read.
Definition at line 77 of file XFuXMPlayer.h. Referenced by initSong(), and stream(). |
|
|
Flag for pattern jump and pattern break commands.
Definition at line 78 of file XFuXMPlayer.h. Referenced by initSong(), and stream(). |
|
|
Pattern data.
Definition at line 53 of file XFuXMPlayer.h. Referenced by getAtom(), loadXM(), stream(), XFuXMPlayer(), and ~XFuXMPlayer(). |
|
|
Pattern delay counter.
Definition at line 73 of file XFuXMPlayer.h. Referenced by initChannel(), initSong(), and stream(). |
|
|
Temporary pattern delay counter.
Definition at line 74 of file XFuXMPlayer.h. Referenced by initSong(), and stream(). |
|
|
Flag for skipping pattern delay commands.
Definition at line 75 of file XFuXMPlayer.h. Referenced by initSong(), and stream(). |
|
|
Pattern index.
Definition at line 66 of file XFuXMPlayer.h. Referenced by create(), getAtom(), initSong(), and stream(). |
|
|
Pattern data index.
Definition at line 64 of file XFuXMPlayer.h. |
|
|
Definition at line 71 of file XFuXMPlayer.h. Referenced by stream(). |
|
|
Definition at line 62 of file XFuXMPlayer.h. Referenced by stream(), and XFuXMPlayer(). |
|
|
Definition at line 61 of file XFuXMPlayer.h. Referenced by XFuXMPlayer(). |
|
|
Counter.
Definition at line 69 of file XFuXMPlayer.h. Referenced by initSong(), and stream(). |
|
|
Amount of samples in one tick.
Definition at line 68 of file XFuXMPlayer.h. Referenced by initSong(), and stream(). |
|
|
Sampling rate.
Definition at line 45 of file XFuXMPlayer.h. Referenced by getTick(), initSong(), stream(), and XFuXMPlayer(). |
|
|
Definition at line 59 of file XFuXMPlayer.h. Referenced by stream(), and XFuXMPlayer(). |
|
|
Module.
Definition at line 50 of file XFuXMPlayer.h. Referenced by dumpSongParameters(), initChannel(), initSong(), loadXM(), stream(), XFuXMPlayer(), and ~XFuXMPlayer(). |
|
|
Definition at line 60 of file XFuXMPlayer.h. Referenced by stream(), and XFuXMPlayer(). |
|
|
Signed/unsigned xor value.
Definition at line 47 of file XFuXMPlayer.h. Referenced by stream(), and XFuXMPlayer(). |
|
|
Tick speed in Hz.
Definition at line 70 of file XFuXMPlayer.h. Referenced by initSong(), and stream(). |
|
|
Test tick counter.
Definition at line 81 of file XFuXMPlayer.h. Referenced by getTick(), initSong(), and stream(). |
|
|
For volume ramping.
Definition at line 83 of file XFuXMPlayer.h. |
|
|
XM file header.
Definition at line 49 of file XFuXMPlayer.h. |
|
|
XM pattern headers.
Definition at line 52 of file XFuXMPlayer.h. Referenced by create(), loadXM(), stream(), XFuXMPlayer(), and ~XFuXMPlayer(). |
![]() |
Confidential Copyright © 2002-2003 Fathammer | with doxygen by Dimitri van Heesch | ||